consolidate handling of extensions in gpx writer. (#1200)
authortsteven4 <13596209+tsteven4@users.noreply.github.com>
Mon, 30 Oct 2023 00:35:42 +0000 (18:35 -0600)
committerGitHub <noreply@github.com>
Mon, 30 Oct 2023 00:35:42 +0000 (18:35 -0600)
commitab788348a9ca8d63239c306921b0b1d51affea51
tree028a81a164f892a9322ecb1d6d12302b0d494dc6
parent9bc736acac1a516d78283e90be3ee3569d2e87c9
consolidate handling of extensions in gpx writer. (#1200)

This is a user visible change.

Previously if gARmIN sPECIAL dATA existed and both garminextensions
and humminbirdextensions were false then the gpx writer would
write a subset if it (and not passthrough any gpx -> gpx data.)
If gARmIN sPECIAL dATA existed and either extension option was true,
then a different subset would be written (and any gpx -> gpx data would
not be passed through.)  Now the garminextensions option must
used to have any gARmIN sPECIAL dATA data written.

Previously, when passing through extension data from the gpx reader to
the gpx writer, some elements of the garmin and humminbird extensions
were not included. Now, all foreign elements are included. As before,
passthrough is only used when both extension options are false.
garmin_fs.cc
garmin_fs.h
gpx.cc
gpx.h
reference/basecamp~gpx.gpx
reference/gdb-sample-v3-ilinks.gpx
reference/multiple-links.gpx
reference/umsonstdraussen.gpx
testo.d/garmin_gpi.test